<?php
namespace Addons\button;

use Addons\Button\BaseCt;
use Addons\Button\Model\ButtonModel;
use houdunwang\wechat\WeChat;

class Site extends BaseCt{
    public function index(){
        dd('我是shop模块的后台');
    }

    /**
     * 显示菜单列表
     */
    public function lists(){
        $data=M('button')->select();
//        dd($data);
        $this->assign('data',$data);
       $this->showView();
    }

    /**
     * 添加和编辑
     */
    public function add(){
        $bid=I('get.bid');
        if(IS_POST){
             if($bid){
//                 修改数据
                 $_POST['bid']=$bid;
             }
//            dd($_POST);die;
            $this->store((new ButtonModel()),$_POST,function(){
                if(I('get.bid')){
                    $bid=I('get.bid');
                    if((M('button')->where("bid=$bid")->getField('bstatus'))==1){
                        M('button')->where("bid=$bid")->setField('bstatus',0);
                        $this->success('请重新推送改菜单',site_url('button/lists'));die;
                    };
                }
            });
        }
        if($bid){
//            编辑页面
//            查出旧数据
            $button=M('button')->find($bid);
//            dd($button);
        }else{
            $button=[
                "bid"=> '',
                 "bname" => '',
                "bcontent" =>'{"button":[]}'
            ];
        }
        $this->assign('button',$button);
        $this->showView();
    }

    /**
     * 删除
     */
    public function del(){
         $bid=I('get.bid');
        if((M('button')->where("bid=$bid")->getField('bstatus'))==1){
            $this->error('对不起，该菜单正在使用中');die;
        }
        $res=M('button')->where("bid=$bid")->delete();
         $this->jump($res,'删除成功','删除失败');

    }


    /**
     * 推送菜单到微信上
     */
    public  function  push(){
        $bid=I('get.bid');
//        dd($bid);
        $data=M('button')->find($bid);
//        echo $data['bcontent'];
//        dd($data);die;
        $data=$data['bcontent'];
        $res=WeChat::instance('button')->create($data);
        if($res['errcode']==0){
            M('button')->where("bid=$bid")->setField('bstatus',1);
            M('button')->where("bid <> $bid")->setField('bstatus',0);
            $this->success('推送成功',site_url('button/lists'));
        }else{
            $this->error($res['errmsg']);
        }
    }
}







